package edu.unf.cen6940.dao;

import edu.unf.cen6940.domain.Generatedproduct;

import java.util.Set;

import org.skyway.spring.util.dao.JpaDao;

import org.springframework.dao.DataAccessException;

/**
 * DAO to manage Generatedproduct entities.
 * 
 */
public interface GeneratedproductDAO extends JpaDao<Generatedproduct> {

	/**
	 * JPQL Query - findGeneratedproductByProductName
	 *
	 */
	public Set<Generatedproduct> findGeneratedproductByProductName(String productName) throws DataAccessException;

	/**
	 * JPQL Query - findGeneratedproductByProductName
	 *
	 */
	public Set<Generatedproduct> findGeneratedproductByProductName(String productName, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findGeneratedproductByPrimaryKey
	 *
	 */
	public Generatedproduct findGeneratedproductByPrimaryKey(Integer generatedProductId) throws DataAccessException;

	/**
	 * JPQL Query - findGeneratedproductByPrimaryKey
	 *
	 */
	public Generatedproduct findGeneratedproductByPrimaryKey(Integer generatedProductId, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findAllGeneratedproducts
	 *
	 */
	public Set<Generatedproduct> findAllGeneratedproducts() throws DataAccessException;

	/**
	 * JPQL Query - findAllGeneratedproducts
	 *
	 */
	public Set<Generatedproduct> findAllGeneratedproducts(int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findGeneratedproductByGeneratedProductId
	 *
	 */
	public Generatedproduct findGeneratedproductByGeneratedProductId(Integer generatedProductId_1) throws DataAccessException;

	/**
	 * JPQL Query - findGeneratedproductByGeneratedProductId
	 *
	 */
	public Generatedproduct findGeneratedproductByGeneratedProductId(Integer generatedProductId_1, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findGeneratedproductByProductDescription
	 *
	 */
	public Set<Generatedproduct> findGeneratedproductByProductDescription(String productDescription) throws DataAccessException;

	/**
	 * JPQL Query - findGeneratedproductByProductDescription
	 *
	 */
	public Set<Generatedproduct> findGeneratedproductByProductDescription(String productDescription, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findGeneratedproductByProductDescriptionContaining
	 *
	 */
	public Set<Generatedproduct> findGeneratedproductByProductDescriptionContaining(String productDescription_1) throws DataAccessException;

	/**
	 * JPQL Query - findGeneratedproductByProductDescriptionContaining
	 *
	 */
	public Set<Generatedproduct> findGeneratedproductByProductDescriptionContaining(String productDescription_1, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findGeneratedproductByProductNameContaining
	 *
	 */
	public Set<Generatedproduct> findGeneratedproductByProductNameContaining(String productName_1) throws DataAccessException;

	/**
	 * JPQL Query - findGeneratedproductByProductNameContaining
	 *
	 */
	public Set<Generatedproduct> findGeneratedproductByProductNameContaining(String productName_1, int startResult, int maxRows) throws DataAccessException;

}